<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>Document</title>
  <!-- 1. 导入模板引擎 -->
  <!-- 在 window 全局，多一个函数，叫做 template('模板的Id', 需要渲染的数据对象) -->
  <script src="../js/template-web.js"></script>
  <script src="../js/jquery.min.js"></script>
</head>

<body>

  <div id="container">

  </div>

  <!-- 3. 定义模板 -->
  <!-- 3.1 模板的 HTML 结构，必须定义到 script 中 -->
  <script type="text/html" id="tpl-user">
    <p>我是{{name}}</p>
    <p>我今年{{age}}岁</p>
    <p>我出生于{{birthday |birthdayFunction}}</p>
    {{if age>=18}}
    <p>我已经成年</p>
    {{else}}
    <p>我还没有成年</p>
    {{/if}}
   {{@ bq}}

    <ul>
      {{each gfs}}
      <li>第{{$index+1}}个女朋友：{{$value}}</li>
      {{/each}}
    </ul>
  </script>

  <script>
    template.defaults.imports.birthdayFunction = function (date) {
      const newDate = new Date(date)
      return `${newDate.getFullYear()}-${newDate.getMonth() + 1}-${newDate.getDate()}`
    }

    // 2. 定义需要渲染的数据
    var data = {
      name: '杰哥',
      age: 16,
      bq: '<p>但是我有很多女朋友</p>',
      gfs: ['苍老师', '波老师'],
      birthday: '2000/1/1'
    }

    // 4. 调用 template 函数
    var htmlStr = template('tpl-user', data)
    // console.log(htmlStr)
    // 5. 渲染HTML结构
    $('#container').html(htmlStr)
  </script>
</body>

</html>